package org.tgcloud.group.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 项目表
 */
@ApiModel(description = "项目表")
@Data
@TableName("mj_project")
public class MjProject implements Serializable {

    /** 主键ID */
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "主键ID")
    private Integer id;

    /** 公司项目名称 */
    @TableField("project_name")
    @ApiModelProperty(value = "公司项目名称")
    private String projectName;

    /** 品牌名称 */
    @TableField("brands")
    @ApiModelProperty(value = "品牌名称")
    private String brands;

    /** 品类id集合 */
    @TableField("cate_ids")
    @ApiModelProperty(value = "品类id集合")
    private String cateIds;

    @TableField("bussiness_username")
    @ApiModelProperty(value = "商务负责人用户名")
    private String bussinessUsername;

    /** 区域id，sys_label_value */
    @TableField("area_id")
    @ApiModelProperty(value = "区域id，sys_label_value")
    private String areaId;

    /** 执行负责人 */
    @TableField("permission_username")
    @ApiModelProperty(value = "执行负责人")
    private String permissionUsername;

    /** 创建时间 */
    @TableField("create_time")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @TableField("update_time")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    /** 状态 */
    @TableField("status")
    @ApiModelProperty(value = "状态：1、创建中，2、核价中-未分配给渠道，3、跟进中，4、已签单，5、执行完，6、核价中-已分配未反馈，7、核价中-已反馈未确认，9、已黄单，10、已删除")
    private Short status;

    /** 品牌负责人 */
    @TableField("brands_username")
    @ApiModelProperty(value = "品牌负责人")
    private String brandsUsername;

    /** 品名 */
    @TableField("product_name")
    @ApiModelProperty(value = "品名")
    private String productName;

    /** 商务id */
    @TableField("business_id")
    @ApiModelProperty(value = "商务id")
    private Integer businessId;

    /** 执行负责人id */
    @TableField("permission_id")
    @ApiModelProperty(value = "执行负责人id")
    private Integer permissionId;

    /** 核价确认签单时间 */
    @TableField("check_time")
    @ApiModelProperty(value = "核价确认签单时间")
    private Date checkTime;

    /** 是否打折 */
    @TableField("is_discount")
    @ApiModelProperty(value = "是否打折，1、是，2、否")
    private Short isDiscount;

    /** 打折文本 */
    @TableField("discount_content")
    @ApiModelProperty(value = "打折-文本")
    private String discountContent;

    /** 打折图片 */
    @TableField("discount_pic")
    @ApiModelProperty(value = "打折-图片")
    private String discountPic;

    /** 合同路径 */
    @TableField("contract_url")
    @ApiModelProperty(value = "合同路径，能预览与下载")
    private String contractUrl;

    /** 执行进度 */
    @TableField("execution_progress_id")
    @ApiModelProperty(value = "执行进度")
    private Integer executionProgressId;

    /** 到货状态 */
    @TableField("arrival_progress_id")
    @ApiModelProperty(value = "到货状态")
    private Integer arrivalProgressId;

    /** 到货仓库 */
    @TableField("arrival_warehouse_id")
    @ApiModelProperty(value = "到货仓库")
    private Integer arrivalWarehouseId;

    /** 实际货值 */
    @TableField("actual_value_price")
    @ApiModelProperty(value = "实际货值")
    private String actualValuePrice;

    /** 开票公司 */
    @TableField("invoice_company")
    @ApiModelProperty(value = "开票公司")
    private String invoiceCompany;

    /** 开票金额 */
    @TableField("invoice_price")
    @ApiModelProperty(value = "开票金额")
    private BigDecimal invoicePrice;

    /** 到货进度 */
    @TableField("good_arrival_status")
    @ApiModelProperty(value = "到货进度")
    private String goodArrivalStatus;

    /** 到货详情 */
    @TableField("good_arrival_msg")
    @ApiModelProperty(value = "到货详情")
    private String goodArrivalMsg;

    /** 黄单理由 */
    @TableField("fail_reason")
    @ApiModelProperty(value = "黄单理由")
    private String failReason;

    /** 黄单时间 */
    @TableField("fail_time")
    @ApiModelProperty(value = "黄单时间")
    private Date failTime;

    /** 订单编号 */
    @TableField("order_no")
    @ApiModelProperty(value = "订单编号")
    private String orderNo;

    /** 备注 */
    @TableField("project_remark")
    @ApiModelProperty(value = "备注")
    private String projectRemark;

    /** 出货货值 */
    @TableField("project_out_good_price")
    @ApiModelProperty(value = "出货货值")
    private BigDecimal projectOutGoodPrice;

    /** 出货备注 */
    @TableField("project_out_good_remark")
    @ApiModelProperty(value = "出货备注")
    private String projectOutGoodRemark;

    /** 出货部分应收 */
    @TableField("project_out_good_some_price")
    @ApiModelProperty(value = "出货部分应收，累计总数")
    private BigDecimal projectOutGoodSomePrice;

    /** 出货详情 */
    @TableField("project_out_good_msg")
    @ApiModelProperty(value = "出货详情，[{选择时间到天，出货货值，出货备注，出货部分应收}]")
    private String projectOutGoodMsg;

    /** 是否配包 */
    @TableField("is_package")
    @ApiModelProperty(value = "是否配包，1、无，2、已配包")
    private Short isPackage;

    /** 是否排期 */
    @TableField("is_scheduling")
    @ApiModelProperty(value = "是否排期，1、无，2、已排期")
    private Short isScheduling;

    /** 品牌id */
    @TableField("brand_id")
    @ApiModelProperty(value = "品牌id，对应mj_business_account表中的id")
    private Integer brandId;

    /** 项目名称 */
    @TableField("name")
    @ApiModelProperty(value = "项目名称")
    private String name;

    /** 执行完时间 */
    @TableField("final_time")
    @ApiModelProperty(value = "执行完时间")
    private Date finalTime;

    /** 修改前的商务id */
    @TableField("update_before_business_ids")
    @ApiModelProperty(value = "修改前的商务id")
    private String updateBeforeBusinessIds;

    /** 商务助理id */
    @TableField("business_assistant_id")
    @ApiModelProperty(value = "商务助理id")
    private Integer businessAssistantId;

    /** 选品负责人id */
    @TableField("product_selection_manager_id")
    @ApiModelProperty(value = "选品负责人id")
    private Integer productSelectionManagerId;

    /** 选品助理id */
    @TableField("product_selection_assistant_id")
    @ApiModelProperty(value = "选品助理id")
    private Integer productSelectionAssistantId;

    /** 项目需求 */
    @TableField("project_demand")
    @ApiModelProperty(value = "项目需求")
    private String projectDemand;

    /** 投放品牌 */
    @TableField("brand_placement")
    @ApiModelProperty(value = "投放品牌")
    private String brandPlacement;

    /** 投放品牌图片 */
    @TableField("brand_placement_pic")
    @ApiModelProperty(value = "投放品牌图片")
    private String brandPlacementPic;

    /** 项目类型 */
    @TableField("project_type")
    @ApiModelProperty(value = "项目类型")
    private String projectType;

    private static final long serialVersionUID = 1L;
}
